package com.mce.nebula.entity;

import com.mce.nebula.common.BaseEntity;
import jakarta.persistence.*;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * 云市应用组继承关系实体，对应Python的RainbondCenterAppInherit模型
 */
@Data
@EqualsAndHashCode(callSuper = true)
@Entity
@Table(name = "rainbond_center_app_inherit",
       uniqueConstraints = {
           @UniqueConstraint(columnNames = "group_key"),
           @UniqueConstraint(columnNames = "version"),
           @UniqueConstraint(columnNames = "derived_group_key")
       })
public class RainbondCenterAppInherit extends BaseEntity {
    
    @Column(name = "group_key", length = 32, unique = true, nullable = false)
    private String groupKey;
    
    @Column(name = "version", length = 20, unique = true, nullable = false)
    private String version;
    
    @Column(name = "derived_group_key", length = 32, unique = true, nullable = false)
    private String derivedGroupKey;
}